home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / clarf.z / clarf
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. CCCCLLLLAAAARRRRFFFF((((3333FFFF))))                                                            CCCCLLLLAAAARRRRFFFF((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      CLARF - applie a complex elementary reflector H to a complex M-by-N
  10.      matrix C, from either the left or the right
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE CLARF( SIDE, M, N, V, INCV, TAU, C, LDC, WORK )
  14.  
  15.          CHARACTER     SIDE
  16.  
  17.          INTEGER       INCV, LDC, M, N
  18.  
  19.          COMPLEX       TAU
  20.  
  21.          COMPLEX       C( LDC, * ), V( * ), WORK( * )
  22.  
  23. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  24.      CLARF applies a complex elementary reflector H to a complex M-by-N matrix
  25.      C, from either the left or the right. H is represented in the form
  26.  
  27.            H = I - tau * v * v'
  28.  
  29.      where tau is a complex scalar and v is a complex vector.
  30.  
  31.      If tau = 0, then H is taken to be the unit matrix.
  32.  
  33.      To apply H' (the conjugate transpose of H), supply conjg(tau) instead
  34.      tau.
  35.  
  36.  
  37. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  38.      SIDE    (input) CHARACTER*1
  39.              = 'L': form  H * C
  40.              = 'R': form  C * H
  41.  
  42.      M       (input) INTEGER
  43.              The number of rows of the matrix C.
  44.  
  45.      N       (input) INTEGER
  46.              The number of columns of the matrix C.
  47.  
  48.      V       (input) COMPLEX array, dimension
  49.              (1 + (M-1)*abs(INCV)) if SIDE = 'L' or (1 + (N-1)*abs(INCV)) if
  50.              SIDE = 'R' The vector v in the representation of H. V is not used
  51.              if TAU = 0.
  52.  
  53.      INCV    (input) INTEGER
  54.              The increment between elements of v. INCV <> 0.
  55.  
  56.      TAU     (input) COMPLEX
  57.              The value tau in the representation of H.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCLLLLAAAARRRRFFFF((((3333FFFF))))                                                            CCCCLLLLAAAARRRRFFFF((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      C       (input/output) COMPLEX array, dimension (LDC,N)
  75.              On entry, the M-by-N matrix C.  On exit, C is overwritten by the
  76.              matrix H * C if SIDE = 'L', or C * H if SIDE = 'R'.
  77.  
  78.      LDC     (input) INTEGER
  79.              The leading dimension of the array C. LDC >= max(1,M).
  80.  
  81.      WORK    (workspace) COMPLEX array, dimension
  82.              (N) if SIDE = 'L' or (M) if SIDE = 'R'
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.